package 进阶阶段;

import java_code.JDBCUtils;
import java_code.druid.druidJDBCUtils;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class demo33Druid连接池 {
    public static void main(String[] args) throws Exception {
        //Druid连接池
        //Druid为监控而生的数据库连接池，它是阿里巴巴开源平台上的一个项目。Druid是Java语言中最好的数据库连接池，Druid能够提供强大的监控和扩展
        //功能.它可以替换DBCP和C3P0连接池。Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。


        //第一种方式，直接调用druid连接池
//        Properties properties = new Properties();
//        InputStream resourceAsStream = demo37druid连接池.class.getClassLoader().getResourceAsStream("java_code\\druid\\druid.properties");
//        properties.load(resourceAsStream);
//
//        DataSource dataSource = DruidDataSourceFactory.createDataSource(properties);
//        Connection connection = dataSource.getConnection();

        //第二种方式，将druid连接池变成工具类进行调用
        Connection connection = druidJDBCUtils.getConnection();

        //sys的数据库中sys_config表的value的赋值
        String a = "6";

        String sql = "select * from sys_config where value = ?";
        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1 , a);

        ResultSet resultSet = preparedStatement.executeQuery();

        while (resultSet.next()){
            String string = resultSet.getString("variable");
            System.out.println(string);
        }

        JDBCUtils.close(resultSet, preparedStatement,connection);
    }
}
